package com.hskn.hss.module.carPlan.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.hskn.hss.core.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author hskn
 * @since 2021-05-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class CarPlan implements Serializable {

    private static final long serialVersionUID = 1L;

    private String id;

    @TableField(exist = false)
    private List<String> carPlanIdList;
    @TableField(exist = false)
    private List<String> workRuleIdList;
    /**
     * 计划名称
     */
    @Excel(name = "计划名称")
    private String planName;

    /**
     * 网格id
     */
    private String gridId;
    /**
     * 部门id
     */
    private String departmentId;
    /**
     * 作业类型id
     */
    private String workTypeId;
    /**
     * 作业班组id
     */
    private String workGroupId;


    /**
     * 作业规则id
     */
    private String workRuleId;
    /**
     * 作业周期
     */
    @Excel(name = "作业周期")
    private Integer workCycle;
    /**
     * 作业趟次
     */
    @Excel(name = "趟次")
    private Integer workTrip;
    /**
     * 预计油耗 L
     */
    private BigDecimal expectOilConsumption;
    /**
     * 预计水耗 T
     */
    private BigDecimal expectWaterConsumption;
    /**
     * 单次作业时长 分钟
     */
    private BigDecimal expectTimeConsumption;

    /**
     * 预计作业里程
     */
    private BigDecimal expectMileage;
    /**
     * 有效时段开始
     */
    @Excel(name = "有效开始时间")
    private String workStartDate;
    /**
     * 有效时段结束
     */
    @Excel(name = "有效结束时间")
    private String workEndDate;
    /**
     * 备注
     */
    private String remark;

    /**
     * 类型 1 机械清扫 2 垃圾清运 3垃圾转运
     */
    private Integer type;

    /**
     * 是否启用，启用1，禁用2
     */
    private Integer isEnable;

    private Integer workType;


    private Date createTime;

    private Date updateTime;

    @TableField(exist = false)
    private String departmentName;
    @TableField(exist = false)
    @Excel(name = "作业班组")
    private String workGroupName;
    @TableField(exist = false)
    @Excel(name = "作业车辆")
    private String carNumbers;
    @TableField(exist = false)
    private String carIds;
    @TableField(exist = false)
    @Excel(name = "网格名称")
    private String gridName;
    @TableField(exist = false)
    @Excel(name = "作业类型")
    private String workTypeName;
    @TableField(exist = false)
    private String workRuleName;
    @TableField(exist = false)
    private Integer collectPointSize;
    @TableField(exist = false)
    @Excel(name = "收集点名称")
    private String collectPointNames;
    @TableField(exist = false)
    @Excel(name = "中转/收集站名称")
    private String collectStandNames;
    @TableField(exist = false)
    @Excel(name = "处理站名称 ")
    private String processStandNames;
}
